Learn R Programming

Compositional (version 5.4)

Cross-validation for the constrained linear least squares for compositional responses and predictors: Cross-validation for the constrained linear least squares for compositional responses and predictors

Description

Cross-validation for the constrained linear least squares for compositional responses and predictors.

Usage

cv.olscompcomp(y, x, rs = 5, tol = 1e-4, nfolds = 10, folds = NULL, seed = FALSE)

Arguments

y

A matrix with compositional response data. Zero values are allowed.

x

A matrix with compositional predictors. Zero values are allowed.

rs

The number of times to run the constrained optimisation using different random starting values each time.

tol

The threshold upon which to stop the iterations of the constrained optimisation.

nfolds

The number of folds to be used. This is taken into consideration only if the folds argument is not supplied.

folds

If you have the list with the folds supply it here. You can also leave it NULL and it will create folds.

seed

If seed is TRUE the results will always be the same.

Value

A list including:

runtime

The runtime of the cross-validation procedure.

kl

The Kullback-Leibler divergences for all runs.

js

The Jensen-Shannon divergences for all runs.

perf

The average Kullback-Leibler divergence and average Jensen-Shannon divergence.

Details

The function performs k-fold cross-validation for the least squares regression where the beta coefficients are constained to be positive and sum to 1.

See Also

ols.compcomp, cv.tflr, klalfapcr.tune

Examples

Run this code
# NOT RUN {
library(MASS)
set.seed(1234)
y <- rdiri(214, runif(3, 1, 3))
x <- as.matrix(fgl[, 2:9])
x <- x / rowSums(x)
mod <- cv.olscompcomp(y, x, rs = 1, tol = 1e-4, nfolds = 5, folds = NULL, seed = 12345)
mod
# }

Run the code above in your browser using DataLab